// 这是一个使用gethostbyname函数来获取指定域名对应IP地址的实例
// 使用该函数时主机需要联网
// struct hostent *gethostbyname(const char *name)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
#include <arpa/inet.h>

int main(int argc, char *argv[]){
	// 定义hostnet结构体，用来接受域名转换的相关参数
	struct hostent *hptr;

	// 定义in_addr结构体
	struct in_addr hostaddr;

	// 获取网络地址
	if( (hptr = gethostbyname(argv[1])) == NULL){
		printf("请输入正确的域名!\n");
		return -2;
	}

	// 将域名中的网络地址转换为ip地址
	memcpy(&hostaddr, &hptr->h_addr, 4);

	printf("%s的ip地址为:%s\n",argv[1], inet_ntoa(hostaddr));
	
	return 0;
}

